perm filename NSF.E[DOC,TOB] blob sn#027211 filedate 1973-02-26 generic text, type T, neo UTF8
00100	                              ABSTRACT
00200	
00300	
00400	The Stanford Artificial Intelligence Laboratory proposes to undertake
00500	a  program in advanced automation over
00600	a period of one year at a cost of  $143K.   This  proposal  is  to
00700	continue and extend programs sponsored under ARPA Contract SD-183.
00800	
00850	This proposal is for initial study and preliminary research on a
00860	three year "proof of concept" project in computer controlled automatic
00870	assembly.  The outline of the project has been worked out
00880	with industrial and governmental advice, but more analysis as well
00890	as more research is needed.
00895	
00900	The  project includes a pilot assembly station carrying out practical
01000	assembly tasks, a hardware-software system ready for production,  and
01100	fundamental  work  on the underlying problems of vision, manipulation
01200	and problem-solving.  We believe the laboratory is uniquely qualified
01300	to carry out this program which will be an important contribution  to
01400	increasing industrial productivity.
01500	
01600	Our  basic  approach  involves  a  general purpose system integrating
01700	sensors and manipulators controlled by sophisticated  programs  in  a
01800	digital  computer.   We  have worked with such systems since 1965 and
01900	have developed many of the basic ideas required  in  general  purpose
02000	assembly  devices.   The main thrust of this proposal is to establish
02100	the practicality of our methods and  carry  their  development  to  a
02200	point from which industry can take over.
02300	
02400	The  research  program  is  divided  into  four  main sections: Pilot
02500	assembly station, vision development, manipulation  development,  and
02600	systems  support.    Each section contains a brief description of the
02700	laboratory's past work in the area, how it is to be applied, and what
02800	extensions  are  to  be undertaken.  Finally, we consider a number of
02900	important issues concerning our  relations  with  industry  and  with
03000	other reseach and development efforts in advanced automation.
03100	
03200	
03300	                          TABLE OF CONTENTS
03400	
03500	Part								Page
03600	
03700	I	The Need for Advanced Automation ......................  1
03800	II	Research Plan .........................................  4
03900		A.	The Pilot Assembly Station ....................  4
04000		B.	Research in Vision ............................  6
04100		C.	Manipulator Development .......................  9
04200		D.	Systems Requirements for Advanced Automation .. 10
04300	III	Dissemination of Results and Relation with Industry ... 12
04400	IV	Staff ................................................. 13
04500	V	Computing Facilities .................................. 22
04600	VI	Budget ................................................ 23
04700	VII	References ............................................ 26
04800	VIII	Relevant Laboratory Publications ...................... 30
04900	IX	Films ................................................. 32
05100	X	Cognizant Personnel ................................... 49
     

00100	I. THE NEED FOR ADVANCED AUTOMATION
00200	
00300	
00400	The contributions that advanced automation can make to enhance productivity
00500	 in  manufacturing  are  now  widely
00600	appreciated.      Current interest in advanced  computer-oriented
00700	automation  stems  from two sources.      The first is the decreasing
00800	cost of computation combined with an improved understanding of how to
00900	apply  computation  to  various aspects of manufacturing.  The second
01000	cause is the realization that many current manufacturing  operations,
01100	primarily   assembly  and  inspection,  will  require complex
01200	automation  techniques which have are now research techniques. The  same  considerations  apply   to   the
01300	automation  of  tasks  such as laboratory and medical procedures, but
01400	the emphasis has been (as ours will be) on manufacturing.
01500	         A  recent ARPA-sponsored study
01600	[Anderson 1972] in which we participated suggests the following major
01700	benefits from advanced automation:
01800		improved national productivity
01900		reduced prices
02000		increased product quality and uniformity
02100		customization of products
02200		increased job satisfaction. 
02300	We  would  like to add just one comment.   As we have seen with other
02400	technological developments such as numerical-controlled tools,  there
02500	will be things made which were previously impractical to make.  There
02600	is widespread agreement in the technical, industrial and  government
02700	communities on the potential benefits of advanced automation.   There
02800	is much less agreement on  the  level  of  sophistication  needed  in
02900	automation  hardware and software.  While there are large application
03000	areas in which  specially  constructed  machines  or  simple  general
03100	purpose  devices  will  prove  optimal,  we  believe  that  the  most
03200	practical solution for intermediate quantities (500 to 100,000) will  be  to  develop
03300	general   purpose  assembly  and  inspection  devices  controlled  by
03400	sophisticated programs in digital computers.
03500	
03600	Several studies have indicated some priorities among directions of
03700	automation.  The ISI study [Anderson] indicates that less than 20%
03800	of discrete manufacturing is amenable to special purpose automation.
03900	A Chrysler Corporation study indicates that car assembly labor
04000	has first priority in automation; assembly plant direct labor is
04100	40% of direct corporate labor.  It was felt that automation was a
04200	must in the small parts division.  The ISI study quotes a figure of
04300	75% as the fraction of batch produced discrete manufactures.  One
04400	conclusion is that "the emphasis in development should be on
04500	simple vision devices and on low-bandwidth tactile and force
04600	sensing feedback".  That study indicates that the assembly process
04700	typically accounts for 50 percent of production cost.  Although
04800	such estimates are crude, the study indicates a potential savings of
04900	$27 billion of manufactures which total $492 billion.
05000	
05100	We  assume  that present manipulators have a small but stable market,
05200	and that most will have minicomputers  soon  (Sundstrand  does  now).
05300	Will  the  incremental  cost  of  touch,  force and visual sensors be
05400	offset by the opening of new  capabilities,  and  will  the  cost  be
05500	offset  by  reduced  cost  of  system design for machines which allow
05600	loose  alignment  tolerances? 
05700	We estimate that touch and force sensing will add about 5% to the cost
05800	of current manipulators of the Unimate class (assuming a multiple of
05900	two between cost and selling price).
06000	    We  estimate  that  by  1977,   the
06100	incremental cost of visual sensors, a laser ranging device such as we
06200	use now,and additional memory requirements, with the multiple of two  in
06300	marketing,  will  add about 15%-20% to current manipulator prices. If
06400	labor costs continue to rise, part of the increase  will  be  offset,
06500	but cost comparisons will not change appreciably over that time scale
06600	unless significant new mechanical designs are made.      A conclusion
06700	is that sensor-equipped robots will be available at slight additional
06800	cost.   We  explore  the  benefits  of  incremental  improvements  to
06900	manipulators.
07000	
07100	We do not expect mechanical production costs to drop as  dramatically
07200	as electronics costs fall with integration.   The most promising cost
07300	reduction development would be high-production standard modules  such
07400	as  robots.     As an example, consider the Stanford arm; produced in
07500	unit  quantity,  parts,  manufacturing   and   assembly   costs   are
07600	approximately  $10K.    The  arm  is much simpler than an automobile;
07700	there is no reason why it should  cost  more.  A smaller, more recent
07800	design sells for $3500 in quantities of two.
07900	
08000	Potentially, a robot with two arms, minicomputer control, force and  touch
08100	sensors  can  be  constructed for under $10K in quantities of 1000
08200	now.
08300	Details are shown later.  To summarize: two arms
08400	(new small Scheinman design) $2000 with hand; arm drivers and arm interface
08500	electronics $1000;
08600	force and touch $800; small computer 8k memory $4500; total $8300.
08700	Assuming that the computer price falls to $1000 by 1978, the cost is $5000.
08800	Of course, these are small arms,  suited for parts assembly, not automotive
08900	assembly.
09000	This is the
09100	range of price of present transfer machines which have limited market
09200	because they have limited motion, no control, and are thus locked out
09300	of the economy of scale. There is a dynamic which leads to economy of
09400	scale;  the  greater  the  versatility,  the  wider is the market for
09500	applications. This will be true particularly in small production  and
09600	job  shop  operations  which have been difficult to automate.     The
09700	larger the production, the more versatility for the same initial cost
09800	as  special  devices.      Also, with high volume, standardization of
09900	maintenance, and availability of parts and service are improved.  The
10000	quality of the device is also improved.
10100	
10200	The  economies of scale in production of assembly modules are matched
10300	by economies of intellectual  scale  in  development  of  design  for
10400	automation.    The   design   process   is   modularized  and  easily
10500	communicable; there is  a  common  discipline  which  can  be  widely
10600	absorbed;   developments   of   many   sources   can  be  integrated.
10700	Programming and training done once for one machine can be transferred
10800	to  all  machines  in  a  plant,  and  even  transferred  nationwide.
10900	Functional modularity has been emphasized in our studies.  Modularity
11000	is  clearly  possible  and  there is a powerful economic incentive to
11100	assemble widely varying systems from one, two, or three arm  modules,
11200	force  and  touch  modules, vision and ranging modules, with planning
11300	and monitoring modules. This would also  entail  software  modularity
11400	with  computer-aided  mechanical  design  and  job  specification for
11500	robots on a local or network time-sharing service.
11600	
11700	The alternative is special design for each operation.  We expect that
11800	at  some  point,  design  will be cheaper with standard robot modules
11900	than with special purpose designs, just as it is now more  economical
12000	to  use  mini-computer  controllers than special purpose controllers.
12100	Modularity has the  potential  to  reduce  design  time  and  improve
12200	predictability  of  design time and costs, permitting better planning
12300	and  response  to  competition.   To  some  extent,  the  dehumanized
12400	industrial  worker  now fills the role of standard module, so that we
12500	do not expect discontinuous change. The continuity  with  decades  of
12600	experience  with  design  for  human  versatility  in assembly can be
12700	relied upon;  robots  with  some  versatility,  sensing,  contingency
12800	actions,  and  dexterity  will  provide a transition to newer schemes
12900	which will evolve more slowly.   Another advantage of general purpose
13000	techniques is the ease with which the size of the robot can be scaled
13100	up or down. There appears to be no difficulty in making very large or
13200	very small assembly stations which use essentially the same programs.
13300	
13400	Versatile  assembly  devices  have  an efficiency advantage in medium
13500	scale and job shop production; their utilization  efficiency  can  be
13600	higher  because  versatility  allows  a  variety  of operations to be
13700	scheduled at one station.       The  availability  of  computers  for
13800	production  scheduling  will  allow  the  flexibility  to  be used to
13900	advantage.  Robots would also have longer life over which to amortize
14000	costs,  since  they  could  function with  greatly changed production
14100	operations, and  evolve  with  new  hardware  and  software  modules.
14200	They would have higher reliability, since they would have monitoring,
14300	contingency action, and error recovery. They would be  self-aligning,
14400	self-calibrating, and self-testing.
14500	
14600	With  simple devices, transfer and assembly operations must be broken
14700	down  into  small  operations  with  transfer   operations   between.
14800	This introduces extra transfer devices with orientation-preserving or
14900	re-orienting steps, and overlapping operations which can be  combined
15000	in  an  advanced  device. The extra cost of jigs and fixtures, of stopping
15100	assembly lines adds to the cost of special purpose automation.
15200	  Robots can cut down on real estate, since
15300	several operations can be done at one station.
15400	
15500	Because of the adaptibility of work stations, a quicker  response  to
15600	market and competition is possible.   Production runs can be smaller,
15700	with less capital tied up in inventory and unused  machines.    There
15800	can be better response to the needs of high technology industry which
15900	often requires small quantities of  instruments.     There  has  been
16000	difficulty in meeting the tight tolerances necessary for operation of
16100	non-intelligent devices.     It is hard  to  estimate  the  value  of
16200	systems  which  work within current industrial tolerance, rather than
16300	requiring radical improvements  in  engineering  practice,  but  that
16400	continuity does seem important.
16500	
16600	Serious issues arise in the development of robots with simple sensory
16700	systems.  Some evaluation issues should be settled by demonstration,
16800	since much sharper analyses can be made this way.  Demonstrate practical
16900	speed and dexterity with two arms and tool using.  Demonstrate the
17000	generality of arm control and planning for various arms and devices.
17100	Demonstrate designs which standardize interface with devices and
17200	which lower interface costs.  Demonstrate programming of assembly
17300	devices in an interactive APT-like system (develop the Stanford
17400	Assembly Robot Management System, ARMS); show the commonality of
17500	operations, ie solving a few tasks gives most of the modules to solve
17600	the next task.
17700	
17800	
17900	What is the current involvement?  GM Research Lab has demonstrated
18000	a wheel mounting operation using visual alignment.  IBM has a small
18100	robot project.  Hitachi has demonstrated a robot with touch and a
18200	system with visual identification of objects on a conveyor belt,
18300	with visual control of manipulation.  Can industry be expected to
18400	adequately support this development?  Development of primitive
18500	robots is an evolutionary process, not a single product development.
18600	Thus it is not possible to keep secret and maintain an enormous
18700	productivity advantage; the techniques are usable by everyone.  The
18800	area is too big; the payoffs are huge and the investment level is
18900	large.  Also, traditionally, industry has been dependent on suppliers.
19000	But with the exception of IBM, the suppliers are smaller and less
19100	able to risk the development.  Management techniques require inordinate
19200	return on capital.  
19205	An alternative support could come again from the military.  The ARPA
19210	study and the history of numerical controlled machine tools are natural
19215	consequences of the vast military procurement in technologically advanced
19220	products.  In the case of N/C, funds could be diverted from an outmoded
19225	technology to development of devices which were essential to production
19230	plans for the future.  It is high technology products which are most
19235	competitive internationally in the civilian economy.  The record of
19240	government investment in numerical control, solid state electronics,
19245	computers, and electro-optical devices has been very productive.
19250	However, in large scale development of civilian products and international
19255	markets, foreign governments have taken the lead.
19300	The development of general  purpose  assembly  devices  will  benefit
19400	manufacturers  in  a broad spectrum of industry, particularly medium
19500	scale manufacturing.   It is an  appropriate  area  for  governmental
19600	action to help meet a national need.
19700	
19800	Given sensor-equipped robots at little extra  cost,  they  will  have
19900	visual  ability  to  sense  color,  strong  contrasts  in brightness,
20000	recognize known objects from two dimensional outlines  (top  view  of
20100	flat  object) or three dimensionally using depth, to a certain extent
20200	they will be  able  to  recognize  three  dimensional  objects  using
20300	monocular  recognition.    They will be able to visually align mating
20400	parts  in  assembly  operations,  increase   reliability   by   self-
20500	calibration  and  flaw  and  disaster  detection,  and  permit  large
20600	tolerances in parts transfer, even permitting parts to be taken  from
20700	a  bin.       Several of these abilities are not yet available in the
20800	laboratory,  but  with  known  conditions  and  objects,   and   some
20900	engineering  (e.g.  color coding) are achievable within the time span
21000	of the proposed project.
21100	
21200	The major determinant of the economic impact of assembly robots will
21300	be the extent of their capabilities.  Assessing and extending these
21400	capabilities is the principle goal of the proposed project.
21500	
     

00100	II.  RESEARCH PLAN
00200	
00300		A.  THE PILOT ASSEMBLY STATION
00400	
00500	The basic goal of the  proposed  project  is  to  implement  a  general
00600	purpose  assembly  station  and  to  prove  its applicability to real
00700	problems.  The project will be considered a success  if  one  or more
00800	enterprises  chooses  to  manufacture  and market the general purpose
00900	station.  There are a number of hardware and software problems  to be
01000	solved in meeting our goal.
01100	
01150	In one configuration,
01200	the  assembly  station is assumed to be  connected to a large
01300	time-shared computer facility. Not only does this appear to be a good
01400	design  for  our  problem, but it is also necessary for an integrated
01500	programmed automation facility.  The only emphasized statement in the
01600	ARPA  study  report  [Anderson  1972]  is:   "The  maximum  impact of
01700	computers  in  manufacturing  will  come  from  complete,   real-time
01800	computer  cognizance  and  control  of  all  processes and resources,
01900	allowing the precise scheduling and allocation of these resources."
02000	
02100	Each assembly station will consist of a small digital  computer,  one
02200	or  more  manipulators  and cameras. Manipulators and cameras will be
02300	combined as modules in systems to suit a given task,  and  will  be
02400	digitally controlled by the station computer.
02405	The station computer may be connected to a central computer or may stand
02410	alone.  The latter configuration is less efficient in the long run,
02415	but allows for incremental automation.
02500	
02600	The program in the station computer will be flexible as to the number
02700	and position of manipulators and cameras. It will control input  from
02800	the  cameras,  provide for some pre-processing of the picture and the
02900	application of simple tests to the visual data.     In  the  case  of
03000	manipulators  it will provide for simultaneous servo control. It will
03100	also process  other  inputs,  such  as  from  touch  sensors  on  the
03200	manipulators,  from photocell interrupt devices, limit switches, etc.
03300	Both analog and binary outputs will be available for the  control  of
03400	other devices.
03500	
03600	Each  station  computer will have access to a task program specifying
03700	the actions and tests it should perform to carry out its task.   This
03800	task program will be compiled by the central computer.    Compilation
03900	will consist of the analysis of predicted scenes in order to  specify
04000	simple tests that the station computer can carry out, the calculation
04100	of collision free trajectories for the manipulators, the sequence  of
04200	operations  and  simple  contingency plans. etc.  We are planning for
04300	tasks  whose  normal  execution  does  not  require  detailed   scene
04400	analysis.  If scene analysis becomes necessary  (e.g. a dropped part)
04500	we envision the station sending an image to the central computer  for
04600	processing.
04700	
04800	The  central  computer will perform overall control of the individual
04900	assembly stations and the relative rates of production.   If  at  any
05000	station  a  planned test fails, for which a contingency plan does not
05100	exist, or any unexpected sensor signals  are  received,  the  central
05200	computer will also be interrupted and appropriate actions taken.
05205	If the assembly station is not connected to a central computer, these
05210	operations will require human intervention.
05215	
05300	
05400	Most  of  the  hardware  required  for  the assembly station has been
05500	developed for  the  laboratory.  Manipulators  and  cameras  will  be
05600	discussed  in detail below. The major additional problem is to refine
05700	the  existing  designs  to  meet  the  demands   of   an   industrial
05800	environment.
05900	
06000	We are now acquiring small computer such as the PDP-11 and will
06100	interface the existing arms to it together with one or more  cameras.
06200	A  software  package for the small computer will then be developed in
06300	order to control the manipulators, read the TV cameras and to perform
06400	low  level  visual  analysis.  Programs  to plan tasks, calibrate the
06500	system and to perform higher level visual  analysis,  error  recovery
06600	and  strategy  planning will be written in a high level language for
06700	the time-sharing processor.
06800	
06900	The most difficult part of the assembly station, and the heart of the
07000	project is a demonstration of the feasibility of the station.
07100	We plan to do this by developing programs which actually assemble and
07200	inspect a variety of fairly complex manufactured items.
07300	
07400	A  typical  example is our current effort, assembly of an automobile
07500	water pump. The major  parts  are  to  be  located,  the  screws  are
07600	supplied by a feeder, as is standard.  Locating the body and cover of
07700	the pump require a gross localization, then a  fine  localization  of
07800	screw  holes.    Touch  provides  a  final  accuracy  and independent
07900	coordination of the hand.   The  placing  of  alignment  pins  within
08000	screw  holes  could  be monitored visually; although in this case,the
08100	previous actions provide adequate accuracy.   Placing  of  the  cover
08200	over  alignment  pins  can  be  carried out without vision.  Improved
08300	force  sensing  now  under  development  will  be  useful  for   that
08400	operation.
08500	
08600	As  we move to more difficult tasks, the sophistication required goes
08700	up quite rapidly.  The  current  manipulation  routines  seem  to  be
08800	expandable  to cover anticipated problems, especially since we intend
08900	to employ special purpose manipulators (tools) for some  tasks.   The
09000	main part of our effort will be vision for assembly; an assembly task
09100	will be performed using vision, touch, and two hands.     The  vision
09200	effort  will  be  integrated with other abilities, and while no great
09300	generality will be stressed, new modules will  be  incorporated  into
09400	the  system,  and a set of techniques will evolve.  These will depend
09500	heavily on techniques similar to  those  of  our  recent  studies  in
09600	visual  feedback  and hand/eye coordination [Gill 1972]. The internal
09700	model of the world will be  used  to  predict  visual  appearance  of
09800	selected  areas  of  the  scene, and a set of verification procedures
09900	will confirm or contradict the predictions.  Many of  the  operations
10000	will  be  connected  with  supplying  feedback  to  manipulation, for
10100	alignment and insertion. These visual procedures will have models for
10200	the parts and approximate locations.
10300	
10400	This and other visual tasks connected with assembly will initially be
10500	performed as special case  problems.   In  addition,  to  make  these
10600	techniques   available,   we  will  pursue  development  of  strategy
10700	programs.  This step is essential if intelligent assembly devices are
10800	to  be conveniently programmed for complex tasks. Within the division
10900	of labor between large and small machines, this facility must  reside
11000	in  the  central  time-sharing  facility which has large memory, file
11100	storage, and problem-solving languages. The system must have a  model
11200	of  the  parts  for  assembly,and  a  sequence  of  instructions  for
11300	assembly. It will be necessary to have a representation of shape  and
11400	models for usual assembly operations such as insertion and alignment,
11500	and the ability to solve simple problems  in  connection  with  these
11600	operations,  all  this  to  enable  convenient communication with the
11700	user. When these facilities exist, the addition of new  features  and
11800	operations  can be incorporated smoothly, so that users can call on a
11900	growing library of planning modules.  The result of a planning effort
12000	is  a  cycle  of  machine  planning and man-machine interaction which
12100	results in a plan  network  for  the  mini  computer  which  controls
12200	individual machines.
12300	
12400		B.  RESEARCH IN VISION
12500	
12600	Our past work on visual feedback [Gill 1972] in stacking objects  and
12700	inserting  objects  in  holes  is  directly  relevant  to  vision for
12800	assembly.  The system provides feedback for picking up, then  at  the
12900	final  position,  with  the hand still holding the block and in view,
13000	predicts the appearance of edges and corners within  a  small  window
13100	around  the  faces  to  be  aligned, and uses a corner/edge finder to
13200	determine alignment error. Incremental motion capability of  the  arm
13300	is   used   for   error   correction.      That   work   incorporates
13400	self-calibration to coordinate hand and eye  coordinate  systems  and
13500	provide  for  reliability,  as  well as to limit search by accurately
13600	predicting expected features.   We  have  also  found  it  useful  to
13700	predict the appearance of complex objects and to input models of them
13800	at the console.  Well-developed systems exist for both prediction and
13900	modelling [Baumgart 1972 a,b].
14000	
14100	We  have  a  set  of  visual operations which provide confirmation of
14200	predictions and direct interaction with the visual  image.    Several
14300	preliminary  color  region  analysis  programs  have  been  developed
14400	[Binford, unpublished, Bajcsy 1972].  An edge operator [Hueckel 1969]
14500	and  a  region-based  corner/edge  finder [Gill 1972] both operate on
14600	small windows of the scene, as directed by a higher level.   An  edge
14700	verifier  is  used  to confirm or reject edges predicted from context
14800	[Tenenbaum 1970]. Color identification  has  long  been  demonstrated.
14900	Recently,  a  program  has  been  implemented based on Land's Retinex
15000	model of color constancy in vision, which defines  a  color  triangle
15100	from  ordering  of  brightnesses.   The  center  of  the  triangle is
15200	designated as white. The program shows a color constancy  similar  to
15300	humans;  table top scenes are assigned colors reasonably well under a
15400	variety of lighting with different spectra:   sunlight,  flourescent,
15500	and incandescent.
15600	
15700	These   techniques  have  been  used  on  scenes  more  complex  than
15800	polyhedra.  Outdoor scenes were analyzed with a combination of  color
15900	and texture region analysis [Bajcsy 1972]; depth cues were taken from
16000	the gradient of texture. Natural objects and natural scenes have been
16100	used  for our work with motion parallax [Nevatia in draft] and stereo
16200	vision [Quam,Hannah].These  are  complementary  techniques  of  depth
16300	perception   which  are  applicable  for  planetary  exploration  and
16400	industrial tasks.  Motion  parallax  can  be  used  for  planning  of
16500	navigation  and characterizing large scale terrain features, since it
16600	provides large baselines. Visual feedback with stereo vision is  much
16700	more  powerful than without; we have a program which has demonstrated
16800	stereo visual feedback.
16900	
17000	We have been working  with  visual  description  and  recognition  of
17100	complex  objects;  we developed a laser ranging device [Binford 1970,Agin]
17200	which was  operational  two  years  ago.   Using  depth  data  and  a
17300	representation of shape which we have developed, we have been able to
17400	describe the parts of objects like a doll,  snake,  and  glove  [Agin
17500	1972].   The  representation  [Binford  1971]  is based on segmenting
17600	objects into parts connected at joints.  Parts  are  described  by  a
17700	volume  representation  with  arbitrary cross section defined along a
17800	space curve.  Techniques have been developed which join parts into
17805	descriptions of entire objects. 
17900	
18000	A study of visual and depth ranging techniques has been  carried  out
18100	which  provides  a background for choosing sensors and interface, and
18200	making  cost  estimates  [Binford  1972, Earnest  1967].    We   have
18300	maintained  a  calibrated  hand  and  vision system for several years
18400	[Sobel 1970], and have developed self-calibration techniques with one
18500	and two eyes [Yakimovsky unpublished, Hannah 1972, Gill 1972].
18600	
18700	A  system  for  understanding  scenes of blocks from single views has
18800	been implemented [Falk 1970]; it segments  objects,  matches  against
18900	internal  models,  predicts  appearance  from  its  assumptions,  and
19000	searches for verification and contradiction based  on  the  predicted
19100	image.   Support  and spatial relations are also obtained.  There has
19200	been past work on programs  to  obtain  line  drawings  as  input  to
19300	recognition  systems.  An earlier system was based on limited context
19400	of expecting continuation of edges at vertices and predicting missing
19500	edges  in certain expected configurations [Grape 1970]. A more recent
19600	approach has been to use models within the process of generating line
19700	drawings,  so  that  the  most  efficient  next guess can be made and
19800	context used intrinsically in the formation of line drawings.
19900	
20000	                   VISUAL DEVELOPMENT FOR ASSEMBLY
20100	
20200	In  the  pump  assembly,  visual tasks consisted of gross location of
20300	large parts, then using the information to predict location of images
20400	of  holes,  and  monitoring of insertion into holes.  These tasks are
20500	typical of the simple visual operations which we  will  implement  or
20600	adapt.   We will greatly expand our efforts with visual feedback.  At
20700	present, visual feedback techniques are limited to polyhedra. We will
20800	improve image prediction techniques to predict images of objects with
20900	curved edges.  We will develop a simple region analysis program which
21000	assumes adequate contrast to locate the curved edges predicted within
21100	a small  window.   Color  will  be  used  when  necessary.   We  will
21200	implement  two-dimensional matching of boundary curves with predicted
21300	curves.  These will be combined with our existing edge  operator  and
21400	corner/line  operator.  We  will  maintain  a  calibrated  system and
21500	improve calibration updating so that reliability is maintained  at  a
21600	high level.
21700	
21800	                           VISION RESEARCH
21900	
22000	We will improve the laser hardware so that it can be used widely  and
22100	extend  our  work  with representation of complex objects using depth
22200	data.  We are able to make complete  descriptions  of  objects  which
22300	consist  of a single primitive segment, such as a torus, a snake or a
22400	cone.  The programs can segment dolls,  toy  horses,  in  intuitively
22500	natural ways [Agin 1972]. It is necessary to improve our segmentation
22600	process in order to proceed to joining primitive segments  at  joints
22700	and  make  complete  descriptions  of  complex objects.  When we have
22800	these descriptions, the computer will have symbolic  internal  models
22900	of  objects.   No recognition has yet been done, although we are in a
23000	position to recognize those objects which  have  only  one  primitive
23100	segment, for which we can make complete descriptions. For recognition
23200	of more complex objects, once we have complete descriptions, we  will
23300	encode  the  basic  properties  of the representation within a visual
23400	memory  scheme  which   allows   access   of   hypothesized   similar
23500	three-dimensional  shapes,  with  associated  surface information, to
23600	compare more closely with extensive verification.  We intend to apply
23700	large parts of our programs for description and recognition of curved
23800	objects using only monocular intensity information. This  is  a  much
23900	harder  problem,  but  within  our representation, shares much of the
24000	same  code,  and  relies  on  the  same  conceptual  basis  of  local
24100	three-dimensional models.
24200	
24300	We   feel  that  progress  in  application  of  robotics  depends  on
24400	development and system use of representation. To make  robots  useful
24500	for batch production, programming must be rapid enough to change jobs
24600	rapidly.  Ultimately,  representation  of  parts  and  operations  is
24700	crucial.   Our  representation  primitives  resemble some fabrication
24800	operations and provide a useful basis for description of shape.
24900	
25000	We will continue work on color region  analysis  which  is  based  on
25100	proximity  rather  than  contiguity.   Another effort combines region
25200	analysis with a decision theoretic approach based on a  world  model.
25300	We  anticipate  that  these modules will aid the integrated system to
25400	function in more complex environments than have been attempted in the
25500	past.  There is a growing effort on navigation of vehicles in outdoor
25600	scenes.  While this  is  not  directly  relevant  to  the  industrial
25700	environment,  it  does  reflect  the  growing  involvement in complex
25800	visual tasks, and will lead to further development of  an  integrated
25900	visual system.
26000	
26100		C. MANIPULATOR DEVELOPMENT
26200	
26300	Manipulator   research  began  at  Stanford  Artificial  Intelligence
26400	Laboratory  in  1965  with  the  acquisition  and  programming  of  a
26500	prototype  Rancho Orthotic Arm.  A later version of this arm was used
26600	in vision directed block stacking programs.
26700	
26800	Our present arm, the result of a continuing design project,  replaced
26900	the  Rancho Arm in 1970. This arm like its predecessor was controlled
27000	by a digital servo program running under the time  sharing  computer.
27100	The new arm was used in the "Instant Insanity" demonstration in 1971.
27200	A second arm of the same type,  with  only  minor  modifications,  is
27300	currently  being interfaced to the computer.   Both arms will share a
27400	common work space and will  be  able  to  be  used  individually,  or
27500	together for two handed tasks.
27600	
27700	Each joint of the  arm  is calibrated in terms of torque versus drive
27800	level and it is possible to predict the joint drive levels to produce
27900	a  given  force at the hand. Further, for the hand to exhibit degrees
28000	of freedom of motion, various joints are selected to be "free",  that
28100	is  to have no position feedback applied to them. By exerting a force
28200	at the hand and providing that certain degrees of freedom exist it is
28300	possible  to  perform  a  much  wider  class  of  tasks  than  simple
28400	positional control, for instance screwing in  screws,  mating  parts,
28500	inserting tools and turning cranks.
28600	
28700	Touch  sensors on the fingers allow the hand to sense objects without
28800	disturbing them.   When activated the arm will stop when any  of  the
28900	sensors  touch.  Branching arm instructions can test the state of the
29000	sensors and modify the execution of an arm program. When  screwing  a
29100	nut  onto  a  bolt, for instance, the hand is first centered over the
29200	bolt by touching it.
29300	
29400	Control of the arms is by a series of high level instructions;  these
29500	instructions  may  be executed directly, or may be assembled together
29600	into an arm program. Arm programs may then be executed,  as  desired,
29700	by  the  control  program.   The control instructions may be accessed
29800	directly by other programs, using the message procedure mechanism, or
29900	in the form of symbolic source file.
30000	
30100	Positional  accuracy  at  the  hand  is  typically  0.1  inches  with
30200	repeatability of 0.02 inches. Force control at the hand is within  10
30300	ounces. The data rate to run the arm from an assembled arm program is
30400	of the order of 100 bits/second.
30500	
30600	Manipulator research moves  ahead  simultaneously  on  three  fronts:
30700	control,  primitives  and  devices.      Tasks are translated into an
30800	existing hand language and where the task cannot be  accomplished  in
30900	terms  of  existing  primitives,  new  primitives are formulated in a
31000	consistent manner.   When a new primative is  formulated,  real  time
31100	routines  are  developed  to perform the action.  This also leads, in
31200	many cases, to the development of  new  hardware.       Also  as  new
31300	developments  occur  in  hardware design, existing real time routines
31400	are either re-written or modified.
31500	
31600	Research is now concentrating on the following areas:
31700	
31800	Strain gauge instrumentation of the wrist, in order to allow for more
31900	sensitive  interaction  of  the  hand with a task.   High resolution,
32000	high sensitivity touch sensors, to increase tactile  recognition  and
32100	control  abilities.     These  developments  will lead in turn to new
32200	control concepts.
32300	
32400	Development of tools for the hand. These tools  can  be  instrumented
32500	such  that  the  computer can feel and or see at the end of the tool.
32600	This should be a very important area of research as  it  goes  beyond
32700	present human capabilities.
32800	
32900	Two handed arm control, the planning and execution of tasks requiring
33000	the coordinated motion of both arms. This will require  an  extension
33100	of  the  existing  servo  program and the analysis of synchronization
33200	problems. The development of collision avoiders, so that arms will
33300	not collide with other objects and with each other.
33400	
33500	Modification  of  the  existing  arm  design  to  provide  for better
33600	incremental motions, more degrees of freedom and a more rugged design
33700	suitable  for  industrial  use.   Development of arm and eye computer
33800	interfaces.   These contain  synchronized  analog/digital  converters
33900	for input and current controlled drivers for output.
34000	
34100	The  development  of  new hands is expected as more complex tasks are
34200	attempted.   At present, with only one hand, we have been  performing
34300	the  positioning  type  of  hand  actions.   When  the  second arm is
34400	operational we will be able to perform holding and pulling actions as
34500	well.
34600	
34700		D.  SYSTEM REQUIREMENTS FOR ADVANCED AUTOMATION
34800	
34900	A  key  element in the development of any large programming effort is
35000	the software support.  There has been continual  effort  along  these
35100	lines  at  the  Stanford  Artificial Intelligence Laboratory and many
35200	useful ideas have been developed.  We propose to extend the  research
35300	along  two  separate lines:  support for research and system software
35400	for operating automated systems.  We will briefly describe  our  past
35500	efforts in this area and what we propose to undertake.
35600	
35700	The Stanford Artificial  Intelligence  Laboratory  has  pioneered  in
35800	several  areas  of system programming, including timesharing systems,
35900	interactive graphics, and programming languages.
36000	
36100	A great deal of additional effort has gone  into  direct  support  of
36200	hand-eye  research.   Very  early,  we  established a set of standard
36300	formats and library routines [Pingle 72a].  A  programming  language,
36400	SAIL,  was  implemented  in  1968.  The language incorporates special
36500	features for large real-world-oriented problem solving systems and is
36600	currently  in  use  at  a number of Artificial Intelligence and other
36700	laboratories.
36800	
36900	As  we began to assemble larger and more sophisticated collections of
37000	programs, we felt a need  for  flexible  mechanisms  for  cooperating
37100	sequential  processes.  The  resulting  monitor and language features
37200	[Feldman & Sproull 1971]  have worked  well  for  us  and  have  been
37300	influential   on   other  projects.    Recently,  we  have  added  an
37400	additional set of features to SAIL  to  facilitate  non-deterministic
37500	and  event-directed  programming.   The early reactions to this work,
37600	both within the laboratory and without has been very encouraging.
37700	
37800	We expect relatively little work to  be  needed  on  further  systems
37900	support  for  basic  research.   There will undoubtedly be efforts to
38000	take advantage of new hardware and of new programming ideas that  may
38100	develop  in  the  course  of  this program.   Almost all of this work
38200	should be covered by other funding.
38300	
38400	The  development  of  software  for the assembly station will require
38500	more  of  our  effort.   The  central-local  computer   configuration
38600	requires  code to be resident in the local computer and in the shared
38700	machine.    The low level programs in the local machine will  not  be
38800	modified  often,  thus  we can assume that a compiler resident in the
38900	central machine will suffice.   The  planning  programs  and  general
39000	vision programs will be resident in the shared system.  There are two
39100	possible configurations for the shared computer  system:    A  PDP-10
39200	equivalent  machine  or a software package in ASA Standard Fortran IV
39300	which will run on any sufficiently large machine.    One of the tasks
39400	under this proposal would be to evaluate these two alternatives.
39500	
39600	A major share of the programming research effort will be concentrated
39700	on developing a programming system for automated assembly.  This will
39800	combine ideas  from  our  past  work  on  languages,  representation,
39900	computer  graphics and arm control.  We view this task as a branch of
40000	the larger effort on automatic programming being undertaken  in  this
40100	laboratory and elsewhere.
40200	
     

00100	III. UTILIZATION PLAN-DISSEMINATION OF RESULTS AND RELATION WITH INDUSTRY
00200	
00300	All of the discoveries made under this grant will, of course, be made
00400	public.   We  view our role in information transfer in a much broader
00500	way.  Having no desire to sell products and services and  no  clients
00600	with   interests  to  protect,  a  university  laboratory  should  be
00700	primarily a place for acquiring and spreading knowledge.
00800	
00900	The Stanford Artificial Intelligence Laboratory has always considered
01000	information transfer to be one of its primary goals.  In addition, to
01100	our published papers and reports, we have  made  a  number  of  film
01200	reports  which  have  been  extensively  circulated.  There have been
01300	thousands of visitors, ranging  from  elementary  school  classes  to
01400	major  scientific,  governmental  and  industrial  missions from many
01500	countries. We have also encouraged extended visits  by  workers  from
01600	other laboratories and from industry. Members of the laboratory staff
01700	have played a major role in the organization of journals, conferences
01800	and  seminars  in  artificial  intelligence.  Many of our algorithms,
01900	systems, and hardware designs have been adopted by other groups.
02000	
02100	The   success  of  the  program  proposed  here  depends  heavily  on
02200	interaction with industry.  We will need  additional  information  on
02300	the opportunities for automation and will try to involve manfacturers
02400	in the development of the  pilot  assembly  station.   We  have  good
02500	working relationships  with  a  number  of firms and we expect that a
02600	concrete project will help forge the bonds necessary for the transfer
02700	of advanced automation technology from the laboratory.
02800	
02900	One promising approach to technology transfer is  a  staff associates
03000	program.  This  involves  residence of about a year's duration at the
03100	laboratory  by  industrial  scientists.   Such  a  program  was  used
03200	successfully at the MIT, Electronic's Research Laboratory in the area
03300	of programming systems for numerically controlled  tools  and  design
03400	automation.   We intend to utilize this as well as other mechanisms for
03500	gaining the insights  that  industrial  experience  can  add  to  our
03600	enterprise.
03700